﻿using System;
using System.Drawing;
using System.Windows.Forms;
namespace Moonlite.Services.CodeCompletion
{
    public static class AndromedaImageIndexes
    {
        public const int ImageIndexClass = 0;
        public const int ImageIndexMethod = 1;
        public const int ImageIndexEnrichment = 2;
        public const int ImageIndexModifier = 3;
        public const int ImageIndexProperty = 4;
        public const int ImageIndexStruct = 5;
        public const int ImageIndexVariable = 6;
        public const int ImageIndexNamespace = 7;
        public const int ImageIndexSnippet = 8;
        public const int ImageIndexGeneratedFile = 9;
        public const int ImageIndexKeyword = 10;
        public static ImageList GlobalImageList { get; private set; }
        static AndromedaImageIndexes()
        {
            GlobalImageList = new ImageList();
            GlobalImageList.TransparentColor = Color.Magenta;
            GlobalImageList.ImageSize = new Size(16, 16);

            GlobalImageList.Images.Add("Class", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Class.bmp")));
            GlobalImageList.Images.Add("Method", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Method.bmp")));
            GlobalImageList.Images.Add("Enrichment", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Enrichment.bmp")));
            GlobalImageList.Images.Add("Modifier", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Modifier.bmp")));
            GlobalImageList.Images.Add("Property", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Property.bmp")));
            GlobalImageList.Images.Add("Struct", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Struct.bmp")));
            GlobalImageList.Images.Add("Variable", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Field.bmp")));
            GlobalImageList.Images.Add("Namespace", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Namespace.bmp")));
            GlobalImageList.Images.Add("Snippet", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Snippet.bmp")));
            GlobalImageList.Images.Add("GeneratedFile", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_GeneratedFile.bmp")));
            GlobalImageList.Images.Add("Keyword", Image.FromStream(typeof(GalaxyCompletionDataProvider).Assembly.GetManifestResourceStream("Moonlite.Services.CodeCompletion.Resources.Icons.CodeCompletion.CCObject_Keyword.bmp")));

            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexClass, "Class");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexMethod, "Method");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexEnrichment, "Enrichment");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexModifier, "Modifier");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexProperty, "Property");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexStruct, "Struct");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexVariable, "Variable");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexNamespace, "Namespace");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexSnippet, "Snippet");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexGeneratedFile, "GeneratedFile");
            GlobalImageList.Images.SetKeyName(AndromedaImageIndexes.ImageIndexKeyword, "Keyword");
        }
    }
}
